<?php
namespace app\schema;

/**
 * 用户模型
 * @OA\Schema(
 *     schema="User",
 *     required={"id", "openid", "nickname", "agent_level"},
 *     @OA\Property(property="id", type="integer", example=1, description="用户ID"),
 *     @OA\Property(property="openid", type="string", example="o1X-m5J8QMxVHHcXwQkGmAUUwOp0", description="微信开放ID"),
 *     @OA\Property(property="nickname", type="string", example="张三", description="用户昵称"),
 *     @OA\Property(property="avatar", type="string", example="https://thirdwx.qlogo.cn/mmopen/xxx", description="头像URL"),
 *     @OA\Property(property="gender", type="integer", example=1, description="性别：0-未知，1-男，2-女"),
 *     @OA\Property(property="age", type="integer", example=28, description="年龄"),
 *     @OA\Property(property="city", type="string", example="广州", description="城市"),
 *     @OA\Property(property="wechat_id", type="string", example="wxid_123456", description="微信号"),
 *     @OA\Property(property="wechat_qrcode", type="string", example="https://example.com/qrcode.jpg", description="微信二维码"),
 *     @OA\Property(property="agent_level", type="integer", example=1, description="代理等级：1-V1，2-V2，3-V3"),
 *     @OA\Property(property="parent_id", type="integer", example=0, description="上级代理ID"),
 *     @OA\Property(property="commission", type="number", format="float", example=123.45, description="佣金余额"),
 *     @OA\Property(property="team_commission", type="number", format="float", example=456.78, description="团队佣金"),
 *     @OA\Property(property="team_count", type="integer", example=10, description="团队人数"),
 *     @OA\Property(property="status", type="integer", example=1, description="状态：0-禁用，1-启用"),
 *     @OA\Property(property="level_update_time", type="string", format="date-time", example="2023-07-15 10:30:00", description="等级更新时间"),
 *     @OA\Property(property="create_time", type="string", format="date-time", example="2023-07-15 10:00:00", description="创建时间"),
 *     @OA\Property(property="update_time", type="string", format="date-time", example="2023-07-15 10:30:00", description="更新时间")
 * )
 */

/**
 * 纸条模型
 * @OA\Schema(
 *     schema="Note",
 *     required={"id", "user_id", "nickname", "gender", "age", "city", "wechat_id"},
 *     @OA\Property(property="id", type="integer", example=1, description="纸条ID"),
 *     @OA\Property(property="user_id", type="integer", example=1, description="用户ID"),
 *     @OA\Property(property="nickname", type="string", example="张三", description="昵称"),
 *     @OA\Property(property="avatar", type="string", example="https://thirdwx.qlogo.cn/mmopen/xxx", description="头像URL"),
 *     @OA\Property(property="gender", type="integer", example=1, description="性别：0-未知，1-男，2-女"),
 *     @OA\Property(property="age", type="integer", example=25, description="年龄"),
 *     @OA\Property(property="city", type="string", example="北京", description="城市"),
 *     @OA\Property(property="wechat_id", type="string", example="wxid_123456", description="微信号"),
 *     @OA\Property(property="wechat_qrcode", type="string", example="https://example.com/qrcode.jpg", description="微信二维码"),
 *     @OA\Property(property="status", type="integer", example=1, description="状态：1-未抽取，2-已抽取"),
 *     @OA\Property(property="create_time", type="string", format="date-time", example="2023-07-15 10:00:00", description="创建时间"),
 *     @OA\Property(property="update_time", type="string", format="date-time", example="2023-07-15 10:30:00", description="更新时间")
 * )
 */

/**
 * 纸条抽取模型
 * @OA\Schema(
 *     schema="NoteDraw",
 *     required={"id", "user_id", "order_id", "draw_type", "draw_count", "amount", "status"},
 *     @OA\Property(property="id", type="integer", example=1, description="抽取记录ID"),
 *     @OA\Property(property="user_id", type="integer", example=1, description="用户ID"),
 *     @OA\Property(property="note_id", type="integer", example=1, description="纸条ID（单抽）"),
 *     @OA\Property(property="order_id", type="string", example="ND2023071512345678", description="订单号"),
 *     @OA\Property(property="draw_type", type="integer", example=1, description="抽取类型：1-单抽，2-多抽"),
 *     @OA\Property(property="draw_count", type="integer", example=1, description="抽取数量"),
 *     @OA\Property(property="amount", type="number", format="float", example=1.00, description="支付金额"),
 *     @OA\Property(property="status", type="integer", example=0, description="状态：0-未支付，1-已支付"),
 *     @OA\Property(property="pay_time", type="string", format="date-time", example="2023-07-15 11:00:00", description="支付时间"),
 *     @OA\Property(property="create_time", type="string", format="date-time", example="2023-07-15 10:00:00", description="创建时间"),
 *     @OA\Property(property="update_time", type="string", format="date-time", example="2023-07-15 10:30:00", description="更新时间")
 * )
 */

/**
 * 纸条抽取项目模型
 * @OA\Schema(
 *     schema="NoteDrawItem",
 *     required={"id", "draw_id", "note_id"},
 *     @OA\Property(property="id", type="integer", example=1, description="抽取项目ID"),
 *     @OA\Property(property="draw_id", type="integer", example=1, description="抽取记录ID"),
 *     @OA\Property(property="note_id", type="integer", example=1, description="纸条ID"),
 *     @OA\Property(property="create_time", type="string", format="date-time", example="2023-07-15 10:00:00", description="创建时间")
 * )
 */

/**
 * 佣金记录模型
 * @OA\Schema(
 *     schema="CommissionRecord",
 *     required={"id", "user_id", "from_user_id", "order_id", "amount", "level", "status"},
 *     @OA\Property(property="id", type="integer", example=1, description="佣金记录ID"),
 *     @OA\Property(property="user_id", type="integer", example=1, description="用户ID"),
 *     @OA\Property(property="from_user_id", type="integer", example=2, description="来源用户ID"),
 *     @OA\Property(property="order_id", type="string", example="ND2023071512345678", description="订单号"),
 *     @OA\Property(property="amount", type="number", format="float", example=0.54, description="佣金金额"),
 *     @OA\Property(property="level", type="integer", example=1, description="层级关系：1-一级，2-二级，3-三级及以上"),
 *     @OA\Property(property="from_level", type="integer", example=1, description="来源用户代理等级"),
 *     @OA\Property(property="status", type="integer", example=1, description="状态：0-无效，1-有效"),
 *     @OA\Property(property="remark", type="string", example="抽取纸条佣金", description="备注"),
 *     @OA\Property(property="create_time", type="string", format="date-time", example="2023-07-15 10:00:00", description="创建时间"),
 *     @OA\Property(property="update_time", type="string", format="date-time", example="2023-07-15 10:30:00", description="更新时间")
 * )
 */

/**
 * 系统设置模型
 * @OA\Schema(
 *     schema="SystemSetting",
 *     required={"id", "key", "value"},
 *     @OA\Property(property="id", type="integer", example=1, description="设置ID"),
 *     @OA\Property(property="key", type="string", example="note_price", description="设置键名"),
 *     @OA\Property(property="value", type="string", example="1.00", description="设置值"),
 *     @OA\Property(property="create_time", type="string", format="date-time", example="2023-07-15 10:00:00", description="创建时间"),
 *     @OA\Property(property="update_time", type="string", format="date-time", example="2023-07-15 10:30:00", description="更新时间")
 * )
 */ 